Wireless communication systems continue to expand as the use of mobile computing devices and cellular telephones increases. A common method of wireless communication is a spread spectrum communication system. A spread spectrum communications system, and more specifically a Code Division Multiple Access (CDMA) system, permits a multitude of data signals to be transmitted as sequences of codes in the same frequency band concurrently in support of multiple users, and perhaps several in support of servicing even a single terminal to enable various control and status information to be exchanged in parallel with payload information. The codes are so unique that dozens of users can transmit simultaneously within the same frequency band without interference to each other. Adjacent cell sites, therefore, do not need to necessarily use different frequency bands as in Advanced Mobile Phone Systems (AMPS) and Time Division Multiple Access (TDMA) systems. Instead, each cell site may transmit on each frequency which is available to the various wireless carriers.
Commonly, two levels of codes are used. The first level of code, a “scrambling” code, has the effect of distributing the data signal energy over an assigned frequency spectrum. The second level of code, a spreading or symbol code, which is typically chosen from an orthogonal set of such codes, is applied as an element-by-element multiplication of the scrambling code to communicate the information.
In its simplest form, information in CDMA systems is communicated by symbol codes known to a transmitter and to a receiver which make it more difficult to detect by receivers lacking the symbol code. The symbol code or codeword, for example, may be 128 chips in length such that a single data bit of information may be represented as a particular 128 chip sequence, its negative or combinations thereof. The symbol codeword typically consists of a sequence of “chips” having values of −1 or +1 (polar) or 0 and 1 (non-polar) that are multiplied by (or EXCLUSIVE-OR'd with) the information bits to be transmitted. A chip is a term of art used to distinguish from a bit. One skilled in the art will understand a chip and the relationship between a chip and a bit in spread spectrum communications systems. Accordingly, a logic “0” information bit may be encoded as a non-inverted codeword sequence, and a logic “1” information bit may be encoded as an inverted codeword sequence. Alternatively, a logic “0” information bit may be encoded as a first predetermined codeword sequence and a logic “1” information bit may be encoded as a second predetermined codeword sequence
When using a wireless protocol, it is often necessary to search in time for the starting point of the symbol codes rather than rely on previously established synchronization to perform the matched filtering. Searching for symbol codes may occur at the call initiation and at each packet in protocols that are packet oriented. When searching for a symbol code, a correlator of a receiver performs a dot product between a stored copy of the symbol code and a received data signal. A new such dot product is started at least every sample time for the sampled copy of the received signal.
The correlator systems and subsystems (embodied, in part, in hardware) required to distinguish symbol codes represents a significant cost item of a spread spectrum communications receiver. The cost is particularly significant when the objective is to simultaneously search for a large number of codes having a large number of terms. In a commercial Universal Mobile Telecommunications Service (UMTS) system, for example, the initial service request from a mobile terminal on the Receiver Access Channel (RACH) involves a 4000-element code. More specifically, the shift-register type memory that is used to perform constant correlation in detecting CDMA codes is expensive and requires valuable space on printed circuit boards.
Accordingly, what is needed in the art is a system and method for reducing the complexity required to perform constant correlation in spread spectrum communications systems.